package com.qy.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.math.BigDecimal;

/**
 CREATE TABLE `user_comm_profile` ( 
   `id` int NOT NULL AUTO_INCREMENT COMMENT '用户ID', 
   `user_name` varchar(50) NOT NULL COMMENT '用户称呼', 
   `age` tinyint NOT NULL COMMENT '年龄', 
   `occupation` varchar(100) NOT NULL COMMENT '职业/身份', 
   `monthly_budget` decimal(6,2) NOT NULL COMMENT '月度通信预算（元）', 
   `net_demand` enum('低','中','高') NOT NULL COMMENT '流量需求等级', 
   `call_demand` enum('低','中','高') NOT NULL COMMENT '通话需求等级', 
   `need_intl_roam` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否需要国际漫游：0-否 1-是', 
   `need_vas` varchar(200) DEFAULT NULL COMMENT '希望获得的增值服务，逗号分隔', 
   `prefer_contract` enum('无偏好','短期','长期') NOT NULL DEFAULT '无偏好' COMMENT '合约偏好', 
   `extra_remark` text COMMENT '其他个性化需求', 
   PRIMARY KEY (`id`), 
   KEY `idx_budget` (`monthly_budget`), 
   KEY `idx_demand` (`net_demand`,`call_demand`), 
   CONSTRAINT `user_comm_profile_chk_1` CHECK ((`age` between 1 and 150)) 
 ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户通信需求画像表';
 */
@Data
@TableName("user_comm_profile")
public class UserCommProfile {
    @TableId(type = IdType.AUTO)
    private Long id; // 用户ID

    private String userName; // 用户称呼
    private Integer age; // 年龄
    private String occupation; // 职业/身份
    private BigDecimal monthlyBudget; // 月度通信预算（元）
    private String netDemand; // 流量需求等级
    private String callDemand; // 通话需求等级
    private Boolean needIntlRoam; // 是否需要国际漫游：0-否 1-是
    private String needVas; // 希望获得的增值服务，逗号分隔
    private String preferContract; // 合约偏好
    private String extraRemark; // 其他个性化需求
}